package com.twq.basic.bigpicture

/**
 * Created by tangweiqun on 2017/11/27.
 * 使用foreach和for进行迭代
 */
object Step6 {
  def main(args: Array[String]): Unit = {
    //前面的循环是一种很命令式的编程模式，我们可以更加的函数式一点
    //1、新建一个文件，文件名命名为pa.scala，然后在文件中写入如下的代码:
    args.foreach(arg => println(arg))
    //scala -nc pa.scala Concise is nice

    //2、scala编译器会推断出函数参数的类型
    args.foreach((arg: String) => println(arg))

    //3、如果一个函数字面量只包含需要一个参数的一条语句的话，我们可以更加的精简：
    args.foreach(println)

    //4、for expression 这里只是看一下for的功能，
    // 对于for expression更高级的功能我们在第4章的内置控制结构中详细讲述
    //新建一个文件，文件名命名为forargs.scala，然后在文件中写入如下的代码:
    for (arg <- args)
      println(arg)
    //scala -nc forargs.scala for arg in args
  }
}
